home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 2004 #9
/
Amiga Plus CD - 2004 - No. 09.iso
/
amigaplus
/
tools
/
amigaos4_only
/
mpega_libmad
/
library_base.h
< prev
next >
Wrap
C/C++ Source or Header
|
2004-08-03
|
1KB
|
65 lines
#ifndef LIBRARY_BASE_H
#define LIBRARY_BASE_H
#define __USE_SYSBASE
#include <proto/exec.h>
#include <exec/execbase.h>
#include <proto/dos.h>
#ifdef BUILD_POWERUP
struct StartupData
{
APTR ElfObject;
};
struct CallPPCData
{
ULONG Type;
ULONG PPCLVO;
ULONG Args[3];
ULONG Return;
};
#define MSGTYPE_INIT 1
#define MSGTYPE_REMOVE 2
#define MSGTYPE_CALL 3
#define MSGTYPE_HELLO 4
#define MSGTYPE_GOODBYE 5
#else
struct MyStackSwapStruct
{
struct StackSwapStruct stack;
ULONG Return;
ULONG Args[8];
};
#define REQ_STACKSIZE 8192 /* Must be 4-byte aligned! */
#endif
struct PrivateBase {
struct Library pv_Lib;
UWORD pv_Pad;
struct ExecBase *pv_SysBase;
struct DosLibrary *pv_DOSBase;
BPTR pv_SegList;
#ifdef BUILD_POWERUP
struct Library *pv_PPCLibBase;
APTR pv_ElfObject;
APTR pv_LibFuncTable;
APTR pv_ReplyPort;
APTR pv_StartupMsg;
struct StartupData *pv_StartupData;
APTR pv_Task;
APTR pv_PPCPort;
APTR pv_CallPPCMsg;
struct CallPPCData *pv_CallPPCData;
struct PrivateBase *ParentBase;
#else
struct MyStackSwapStruct stackswap;
#endif
};
#endif